/**
 * 流程管理
 */
export interface Flow {
  /**
   * 应用编码
   */
  appCode?: string;
  /**
   * 流程分组编号
   */
  groupCode?: string;
  /**
   * 流程编号
   */
  flowCode?: string;
  /**
   * 流程名
   */
  flowName?: string;
  /**
   * 流程表单来源（流程自建、外部来源）
   */
  formSource?: number;
  /**
   * 流程分组id
   */
  groupId?: number;
  /**
   * 流程图标
   */
  icon?: string;
  /**
   * 流程id
   */
  id?: number;
  /**
   * 流程说明
   */
  illustrate?: string;
  /**
   * 流程附属表单（表单来源为外部来源时才有值）
   */
  subsidiaryFormId?: number;
}
export interface FlowParams {
  groupCode?: string;
  search?: string;
}
export interface FlowProcessParams {
  groupCode?: string;
  appCode?: string;
}
/**
 * 发布审批接口类型
 */
export interface ApprovalRelease {
  /**
   * 是否开启加签操作（1 是 2 否）
   */
  addSignature?: number;
  /**
   * 审批表单详情
   */
  approvalFormDetail: ApprovalFormDetail;
  /**
   * 审批标题
   */
  approvalTitle?: string;
  /**
   * 是否开启自动去重（1 是 2 否）
   */
  automaticWeightRemoval?: number;
  /**
   * 适用业务
   */
  businessAcronyms?: string;
  /**
   * 业务名称
   */
  businessName?: string;
  /**
   * 流程编号
   */
  flowCode?: string;
  /**
   * 流程名
   */
  flowName?: string;
  /**
   * 流程分组编码
   */
  groupCode?: string;
  /**
   * 流程图标
   */
  icon?: string;
  /**
   * 流程说明
   */
  illustrate?: string;
  /**
   * 是否默认（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 节点信息
   */
  pointDetails: PointDetail[];
  /**
   * 流程id
   */
  processId?: number;
  /**
   * 流程状态(1 已发布 2 未发布)
   */
  processStatus?: number;
  /**
   * 是否开启限时审批（1 是 2 否）
   */
  timeLimitedApproval?: number;
  [property: string]: any;
}

/**
 * 审批表单控件详情
 */
export interface ControlDetail {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 子级控件列表
   */
  children: Child[];
  /**
   * 控件中文名（唯一）
   */
  cnName?: string;
  /**
   * 控件类型
   */
  componentType?: string;
  /**
   * 条件类型id
   */
  conditionTypeId?: number;
  /**
   * 创建人
   */
  createBy?: number;
  /**
   * 创建时间
   */
  createdAt?: string;
  /**
   * 控件编码（唯一）
   */
  ctlCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
  /**
   * 软删标识（有值代表删除）
   */
  deletedAt?: string;
  /**
   * 是否开启（1 开启 2 禁用）
   */
  enable?: number;
  /**
   * 控件英文名（唯一）
   */
  enName?: string;
  /**
   * 控件数据库表列名（唯一）
   */
  fieldName?: string;
  /**
   * 主键id
   */
  id?: number;
  /**
   * 是否自建控件（1 是 2 否）
   */
  isCustom?: number;
  /**
   * 是否为默认控件（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 是否用于条件（1 是 2 否）
   */
  isUseCondition?: number;
  /**
   * 控件排序
   */
  orderNo?: number;
  /**
   * 控件所属id（流程主体）
   */
  ownerId?: number;
  /**
   * 控件所属类型（1 审批主体 2 审批子集）
   */
  ownerType?: number;
  /**
   * 父级id （用于明细表格控件）
   */
  parentId?: number;
  /**
   * 控件属性
   */
  props?: string;
  /**
   * 控件值是否必填（1 是 2 否）
   */
  required?: number;
  /**
   * 更新人
   */
  updateBy?: number;
  /**
   * 更新时间
   */
  updatedAt?: string;
  /**
   * 控件值类型(text: 文本  number: 数字)
   */
  valueType?: string;
  [property: string]: any;
}

export interface Child {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 控件中文名（唯一）
   */
  cnName?: string;
  /**
   * 控件类型
   */
  componentType?: string;
  /**
   * 条件类型id
   */
  conditionTypeId?: number;
  /**
   * 创建人
   */
  createBy?: number;
  /**
   * 创建时间
   */
  createdAt?: string;
  /**
   * 控件编码（唯一）
   */
  ctlCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
  /**
   * 软删标识（有值代表删除）
   */
  deletedAt?: string;
  /**
   * 是否开启（1 开启 2 禁用）
   */
  enable?: number;
  /**
   * 控件英文名（唯一）
   */
  enName?: string;
  /**
   * 控件数据库表列名（唯一）
   */
  fieldName?: string;
  /**
   * 主键id
   */
  id?: number;
  /**
   * 是否自建控件（1 是 2 否）
   */
  isCustom?: number;
  /**
   * 是否为默认控件（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 是否用于条件（1 是 2 否）
   */
  isUseCondition?: number;
  /**
   * 控件排序
   */
  orderNo?: number;
  /**
   * 控件所属id（流程主体）
   */
  ownerId?: number;
  /**
   * 控件所属类型（1 审批主体 2 审批子集）
   */
  ownerType?: number;
  /**
   * 父级id （用于明细表格控件）
   */
  parentId?: number;
  /**
   * 控件属性
   */
  props?: string;
  /**
   * 控件值是否必填（1 是 2 否）
   */
  required?: number;
  /**
   * 更新人
   */
  updateBy?: number;
  /**
   * 更新时间
   */
  updatedAt?: string;
  /**
   * 控件值类型(text: 文本  number: 数字)
   */
  valueType?: string;
  [property: string]: any;
}

/**
 * 审批表单子集详情
 */
export interface ApprovalSubsetDetail {
  /**
   * 审批编号
   */
  approvalCode?: string;
  approvalCtlValueDetailList: ControlDetail[];
  /**
   * 子集中文名（唯一）
   */
  cnName?: string;
  /**
   * 创建人
   */
  createBy?: number;
  /**
   * 创建时间
   */
  createdAt?: string;
  /**
   * 软删标识（有值代表删除）
   */
  deletedAt?: string;
  /**
   * 子集是否开启（1 开启 2 禁用）
   */
  enable?: number;
  /**
   * 子集英文名（唯一）
   */
  enName?: string;
  /**
   * 子集数据库表名（唯一）
   */
  fieldName?: string;
  /**
   * 主键id
   */
  id?: number;
  /**
   * 是否自建（1 是 2 否）
   */
  isCustom?: number;
  /**
   * 是否为默认子集（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 子集排序
   */
  orderNo?: number;
  /**
   * 父级子集id
   */
  parentId?: number;
  /**
   * 子集属性
   */
  props?: string;
  /**
   * 子集编码（唯一）
   */
  subCode?: string;
  /**
   * 更新人
   */
  updateBy?: number;
  /**
   * 更新时间
   */
  updatedAt?: string;
}

export interface PointDetail {
  /**
   * 条件创建类型（1 自建 2 默认条件）
   */
  conditionType?: number;
  /**
   * 审批形式（1 依次审批 2 会签 3 或签）
   */
  examineType?: number;
  /**
   * 是否为当前处理节点
   */
  isCurrentPoint?: number;
  /**
   * 下一节点
   */
  nextStep?: number;
  /**
   * 下一节点类型1 审批节点、2 抄送节点、3 子级流程、4 条件分支、5 发起人节点 6 结束节点
   */
  nextStepType?: number;
  /**
   * 参与者形式
   */
  participantFormat?: number;
  /**
   * 参与者信息
   */
  participantInfos?: ParticipantInfo[];
  /**
   * 参与者为空时（1 自动通过 2 自动转交给管理员 3 指定人员）
   */
  participantIsNull?: number;
  /**
   * 节点编号
   */
  pointCode?: string;
  /**
   * 节点id
   */
  pointId?: number;
  /**
   * 节点名称
   */
  pointName?: string;
  /**
   * 节点类型（1 审批节点、2 抄送节点、3 子级流程、4 条件分支、5 发起人节点 6 结束节点）
   */
  pointType?: number;
  /**
   * 上一节点
   */
  previousStep?: number;
  /**
   * 上一节点类型(1 审批节点、2 抄送节点、3 子级流程、4 条件分支、5 发起人节点 6 结束节点)
   */
  previousStepType?: number;
  /**
   * 条件节点优先级(1为最大，优先级依次递减,默认条件优先级最低)
   */
  priority?: number;
  /**
   * 流程id
   */
  processId?: number;
  [property: string]: any;
}

export interface ParticipantInfo {
  /**
   * 参与者id
   */
  objId?: number;
  /**
   * 参与者名称
   */
  objName?: string;
  /**
   * 参与者类型（1 人员 2 角色 3 组织 4 职位 5 全部）
   */
  objType?: number;
  /**
   * 参与者顺序
   */
  orderNo?: number;
  /**
   * 所属对象id
   */
  ownerId?: number;
  /**
   * 所属类型（1 流程 2 审批）
   */
  ownerType?: number;
  [property: string]: any;
}
/**
 * 审批表单详情
 */
export interface ApprovalFormDetail {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 审批表单控件列表
   */
  approvalCtlValueDetailList?: ControlDetail[];
  /**
   * 审批id
   */
  approvalId?: number;
  /**
   * 审批表单子集列表
   */
  approvalSubsetDetailList?: ApprovalSubsetDetail[];
  [property: string]: any;
}
/**
 * 审批表单子集详情
 */
export interface ApprovalSubsetDetail {
  /**
   * 审批编号
   */
  approvalCode?: string;
  approvalCtlValueDetailList: ControlDetail[];
  /**
   * 子集中文名（唯一）
   */
  cnName?: string;
  /**
   * 创建人
   */
  createBy?: number;
  /**
   * 创建时间
   */
  createdAt?: string;
  /**
   * 软删标识（有值代表删除）
   */
  deletedAt?: string;
  /**
   * 子集是否开启（1 开启 2 禁用）
   */
  enable?: number;
  /**
   * 子集英文名（唯一）
   */
  enName?: string;
  /**
   * 子集数据库表名（唯一）
   */
  fieldName?: string;
  /**
   * 主键id
   */
  id?: number;
  /**
   * 是否自建（1 是 2 否）
   */
  isCustom?: number;
  /**
   * 是否为默认子集（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 子集排序
   */
  orderNo?: number;
  /**
   * 父级子集id
   */
  parentId?: number;
  /**
   * 子集属性
   */
  props?: string;
  /**
   * 子集编码（唯一）
   */
  subCode?: string;
  /**
   * 更新人
   */
  updateBy?: number;
  /**
   * 更新时间
   */
  updatedAt?: string;
  [property: string]: any;
}
export interface Child {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 控件中文名（唯一）
   */
  cnName?: string;
  /**
   * 控件类型
   */
  componentType?: string;
  /**
   * 条件类型id
   */
  conditionTypeId?: number;
  /**
   * 创建人
   */
  createBy?: number;
  /**
   * 创建时间
   */
  createdAt?: string;
  /**
   * 控件编码（唯一）
   */
  ctlCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
  /**
   * 软删标识（有值代表删除）
   */
  deletedAt?: string;
  /**
   * 是否开启（1 开启 2 禁用）
   */
  enable?: number;
  /**
   * 控件英文名（唯一）
   */
  enName?: string;
  /**
   * 控件数据库表列名（唯一）
   */
  fieldName?: string;
  /**
   * 主键id
   */
  id?: number;
  /**
   * 是否自建控件（1 是 2 否）
   */
  isCustom?: number;
  /**
   * 是否为默认控件（1 是 2 否）
   */
  isDefault?: number;
  /**
   * 是否用于条件（1 是 2 否）
   */
  isUseCondition?: number;
  /**
   * 控件排序
   */
  orderNo?: number;
  /**
   * 控件所属id（流程主体）
   */
  ownerId?: number;
  /**
   * 控件所属类型（1 审批主体 2 审批子集）
   */
  ownerType?: number;
  /**
   * 父级id （用于明细表格控件）
   */
  parentId?: number;
  /**
   * 控件属性
   */
  props?: string;
  /**
   * 控件值是否必填（1 是 2 否）
   */
  required?: number;
  /**
   * 更新人
   */
  updateBy?: number;
  /**
   * 更新时间
   */
  updatedAt?: string;
  /**
   * 控件值类型(text: 文本  number: 数字)
   */
  valueType?: string;
  [property: string]: any;
}

/**
 * ctl_value_info，控件值信息表
 */
export interface CtlValueInfo {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
}

/**
 * participant，参与者信息表
 */
export interface Participant {
  /**
   * 审批结果（1 同意 2退回 3驳回 4审批中 5待执行 6无操作）
   */
  approvalResult?: number;
  /**
   * 参与者id
   */
  objId?: number;
  /**
   * 参与者名称
   */
  objName?: string;
  /**
   * 审批意见
   */
  opinions?: string;
  /**
   * 参与者顺序
   */
  orderNo?: number;
  /**
   * 节点值id
   */
  pointValueId?: number;
}

/**
 * ctl_value_info，控件值信息表
 */
export interface CtlValueInfo {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
}

/**
 * 审批条件分类名称
 */
export interface ConditionType {
  /**
   * 类型id
   */
  id?: number;
  /**
   * 匹配值类型（text 文本  number 数字）
   */
  matchValueType?: string;
  /**
   * 分类名称
   */
  typeName?: string;
}
